[INFO] cloning repository https://github.com/Skipants/sudoku_solver
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Skipants/sudoku_solver" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkipants%2Fsudoku_solver", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkipants%2Fsudoku_solver'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e2213d71b3e001dfb5997b07e26b3b21ccf97fd6
[INFO] checking Skipants/sudoku_solver against try#72f88fc4e9458f89516a0b8b0868f3718aec5b47 for pr-74989
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkipants%2Fsudoku_solver" "/workspace/builds/worker-5/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Skipants/sudoku_solver on toolchain 72f88fc4e9458f89516a0b8b0868f3718aec5b47
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Skipants/sudoku_solver
[INFO] finished tweaking git repo https://github.com/Skipants/sudoku_solver
[INFO] tweaked toml for git repo https://github.com/Skipants/sudoku_solver written to /workspace/builds/worker-5/source/Cargo.toml
[INFO] crate git repo https://github.com/Skipants/sudoku_solver already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a9c9cca174e7f8dd9b8a3839ce8aba6bcff6d063af421cae874cc855d623a598
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a9c9cca174e7f8dd9b8a3839ce8aba6bcff6d063af421cae874cc855d623a598", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a9c9cca174e7f8dd9b8a3839ce8aba6bcff6d063af421cae874cc855d623a598", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a9c9cca174e7f8dd9b8a3839ce8aba6bcff6d063af421cae874cc855d623a598", kill_on_drop: false }`
[INFO] [stdout] a9c9cca174e7f8dd9b8a3839ce8aba6bcff6d063af421cae874cc855d623a598
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5f40bbeb72607ab98728b000cf755a450c4ca65b95e3ef667916b61ab60ffab4
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "5f40bbeb72607ab98728b000cf755a450c4ca65b95e3ef667916b61ab60ffab4", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Checking sudoku_solver v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0583]: file not found for module `sole_candidate`
[INFO] [stdout]  --> src/strategies/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod sole_candidate;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `sole_candidate`, create file "src/strategies/sole_candidate.rs"
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `sudoku_cell_bitmask`
[INFO] [stdout]  --> src/strategies/column_row_exclusion.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use sudoku_cell_bitmask;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^ no `sudoku_cell_bitmask` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `sudoku_cell_bitmask`
[INFO] [stdout]  --> src/strategies/unique_candidate.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sudoku_cell_bitmask;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^ no `sudoku_cell_bitmask` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `solve` in module `strategies::sole_candidate`
[INFO] [stdout]   --> src/main.rs:31:31
[INFO] [stdout]    |
[INFO] [stdout] 31 |         strategies::sole_candidate::solve(board, x, y);
[INFO] [stdout]    |                                     ^^^^^ not found in `strategies::sole_candidate`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 3  | use strategies::column_row_exclusion::solve;
[INFO] [stdout]    |
[INFO] [stdout] 3  | use strategies::unique_candidate::solve;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `x` in this scope
[INFO] [stdout]   --> src/main.rs:31:44
[INFO] [stdout]    |
[INFO] [stdout] 31 |         strategies::sole_candidate::solve(board, x, y);
[INFO] [stdout]    |                                                  ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `y` in this scope
[INFO] [stdout]   --> src/main.rs:31:47
[INFO] [stdout]    |
[INFO] [stdout] 31 |         strategies::sole_candidate::solve(board, x, y);
[INFO] [stdout]    |                                                     ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/cell.rs:18:6
[INFO] [stdout]    |
[INFO] [stdout] 18 |                 1...9 => Contents::Value(candidates.value),
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0106]: missing lifetime specifier
[INFO] [stdout]   --> src/main.rs:16:53
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn fill_board_from_file(filename: String) -> Result<Board, std::io::Error> {
[INFO] [stdout]    |                                                     ^^^^^ expected named lifetime parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: this function's return type contains a borrowed value with an elided lifetime, but the lifetime cannot be derived from the arguments
[INFO] [stdout] help: consider using the `'static` lifetime
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn fill_board_from_file(filename: String) -> Result<Board<'static>, std::io::Error> {
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `sole_candidate`
[INFO] [stdout]  --> src/strategies/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod sole_candidate;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `sole_candidate`, create file "src/strategies/sole_candidate.rs"
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `sudoku_cell_bitmask`
[INFO] [stdout]  --> src/strategies/column_row_exclusion.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use sudoku_cell_bitmask;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^ no `sudoku_cell_bitmask` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `sudoku_cell_bitmask`
[INFO] [stdout]  --> src/strategies/unique_candidate.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sudoku_cell_bitmask;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^ no `sudoku_cell_bitmask` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `solve` in module `strategies::sole_candidate`
[INFO] [stdout]   --> src/main.rs:31:31
[INFO] [stdout]    |
[INFO] [stdout] 31 |         strategies::sole_candidate::solve(board, x, y);
[INFO] [stdout]    |                                     ^^^^^ not found in `strategies::sole_candidate`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 3  | use strategies::column_row_exclusion::solve;
[INFO] [stdout]    |
[INFO] [stdout] 3  | use strategies::unique_candidate::solve;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `x` in this scope
[INFO] [stdout]   --> src/main.rs:31:44
[INFO] [stdout]    |
[INFO] [stdout] 31 |         strategies::sole_candidate::solve(board, x, y);
[INFO] [stdout]    |                                                  ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `y` in this scope
[INFO] [stdout]   --> src/main.rs:31:47
[INFO] [stdout]    |
[INFO] [stdout] 31 |         strategies::sole_candidate::solve(board, x, y);
[INFO] [stdout]    |                                                     ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/cell.rs:18:6
[INFO] [stdout]    |
[INFO] [stdout] 18 |                 1...9 => Contents::Value(candidates.value),
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0106]: missing lifetime specifier
[INFO] [stdout]   --> src/main.rs:16:53
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn fill_board_from_file(filename: String) -> Result<Board, std::io::Error> {
[INFO] [stdout]    |                                                     ^^^^^ expected named lifetime parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: this function's return type contains a borrowed value with an elided lifetime, but the lifetime cannot be derived from the arguments
[INFO] [stdout] help: consider using the `'static` lifetime
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn fill_board_from_file(filename: String) -> Result<Board<'static>, std::io::Error> {
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `fresh_coordinates` of struct `Board` is private
[INFO] [stdout]   --> src/main.rs:28:37
[INFO] [stdout]    |
[INFO] [stdout] 28 |     while let Some(Coordinate) = board.fresh_coordinates.pop() {
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `value` on type `&'a Candidates`
[INFO] [stdout]   --> src/cell.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 |             contents: match candidates.value {
[INFO] [stdout]    |                                        ^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 17 |             contents: match candidates.value() {
[INFO] [stdout]    |                                             ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `value` on type `&'a Candidates`
[INFO] [stdout]   --> src/cell.rs:18:41
[INFO] [stdout]    |
[INFO] [stdout] 18 |                 1...9 => Contents::Value(candidates.value),
[INFO] [stdout]    |                                                     ^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 18 |                 1...9 => Contents::Value(candidates.value()),
[INFO] [stdout]    |                                                          ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:16:23
[INFO] [stdout]    |
[INFO] [stdout] 16 |             cells: [[Cell::new(Candidates::new_default()); 9]; 9],
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                expected `&Candidates`, found struct `Candidates`
[INFO] [stdout]    |                                help: consider borrowing here: `&Candidates::new_default()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:22:38
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let candidates = Candidates::new(value);
[INFO] [stdout]    |                                                  ^^^^^ expected `u8`, found `i32`
[INFO] [stdout]    |
[INFO] [stdout] help: you can convert an `i32` to `u8` and panic if the converted value wouldn't fit
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let candidates = Candidates::new(value.try_into().unwrap());
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:23:26
[INFO] [stdout]    |
[INFO] [stdout] 23 |                 let cell = Cell::new(candidates);
[INFO] [stdout]    |                                      ^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      expected `&Candidates`, found struct `Candidates`
[INFO] [stdout]    |                                      help: consider borrowing here: `&candidates`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `fresh_coordinates` of struct `board::Board` is private
[INFO] [stdout]   --> src/main.rs:28:37
[INFO] [stdout]    |
[INFO] [stdout] 28 |     while let Some(Coordinate) = board.fresh_coordinates.pop() {
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `board::Board<'_>`
[INFO] [stdout]   --> src/main.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 |         ], board.values, "\nleft:\n{}\n\nright:\n{}", Board::new(initial_values), board);
[INFO] [stdout]    |                  ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `value` on type `&'a Candidates`
[INFO] [stdout]   --> src/cell.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 |             contents: match candidates.value {
[INFO] [stdout]    |                                        ^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 17 |             contents: match candidates.value() {
[INFO] [stdout]    |                                             ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `value` on type `&'a Candidates`
[INFO] [stdout]   --> src/cell.rs:18:41
[INFO] [stdout]    |
[INFO] [stdout] 18 |                 1...9 => Contents::Value(candidates.value),
[INFO] [stdout]    |                                                     ^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout] help: use parentheses to call the method
[INFO] [stdout]    |
[INFO] [stdout] 18 |                 1...9 => Contents::Value(candidates.value()),
[INFO] [stdout]    |                                                          ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:16:23
[INFO] [stdout]    |
[INFO] [stdout] 16 |             cells: [[Cell::new(Candidates::new_default()); 9]; 9],
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                expected `&Candidates`, found struct `Candidates`
[INFO] [stdout]    |                                help: consider borrowing here: `&Candidates::new_default()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:22:38
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let candidates = Candidates::new(value);
[INFO] [stdout]    |                                                  ^^^^^ expected `u8`, found `i32`
[INFO] [stdout]    |
[INFO] [stdout] help: you can convert an `i32` to `u8` and panic if the converted value wouldn't fit
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let candidates = Candidates::new(value.try_into().unwrap());
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:23:26
[INFO] [stdout]    |
[INFO] [stdout] 23 |                 let cell = Cell::new(candidates);
[INFO] [stdout]    |                                      ^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      expected `&Candidates`, found struct `Candidates`
[INFO] [stdout]    |                                      help: consider borrowing here: `&candidates`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                   ^^^^ expected struct `Coordinate`, found struct `cell::Cell`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:23
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                   ^^^^ expected struct `Coordinate`, found struct `cell::Cell`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:44
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                                        ^ expected `u8`, found `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:50
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                                              ^ expected `u8`, found `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:44
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                                        ^ expected `u8`, found `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:29
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `cell::Cell`, found struct `Coordinate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `y` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:41:28
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if self.cells[coordinate.y][coordinate.x].contents == Contents::Value { return }
[INFO] [stdout]    |                                  ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `x` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:41:42
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if self.cells[coordinate.y][coordinate.x].contents == Contents::Value { return }
[INFO] [stdout]    |                                                ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:50
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                                              ^ expected `u8`, found `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[[cell::Cell<'a>; 9]]` cannot be indexed by `u8`
[INFO] [stdout]   --> src/board.rs:41:6
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if self.cells[coordinate.y][coordinate.x].contents == Contents::Value { return }
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[[cell::Cell<'a>; 9]]>` is not implemented for `u8`
[INFO] [stdout]    = note: required because of the requirements on the impl of `Index<u8>` for `[[cell::Cell<'a>; 9]]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `y` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.cells[coordinate.y][coordinate.x] = cell;
[INFO] [stdout]    |                               ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `x` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.cells[coordinate.y][coordinate.x] = cell;
[INFO] [stdout]    |                                             ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[[cell::Cell<'a>; 9]]` cannot be indexed by `u8`
[INFO] [stdout]   --> src/board.rs:45:3
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.cells[coordinate.y][coordinate.x] = cell;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[[cell::Cell<'a>; 9]]>` is not implemented for `u8`
[INFO] [stdout]    = note: required because of the requirements on the impl of `Index<u8>` for `[[cell::Cell<'a>; 9]]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `cell::Contents`
[INFO] [stdout]   --> src/board.rs:47:20
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if cell.contents == Contents::Value {
[INFO] [stdout]    |            ------------- ^^ --------------- fn(u8) -> cell::Contents {cell::Contents::Value}
[INFO] [stdout]    |            |
[INFO] [stdout]    |            cell::Contents
[INFO] [stdout]    |
[INFO] [stdout]    = note: an implementation of `std::cmp::PartialEq` might be missing for `cell::Contents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `&Board<'a>`
[INFO] [stdout]   --> src/board.rs:56:23
[INFO] [stdout]    |
[INFO] [stdout] 56 |         for row in &self.values {
[INFO] [stdout]    |                          ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `answered_count`, `cells`, `fresh_coordinates`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/board.rs:25:29
[INFO] [stdout]    |
[INFO] [stdout] 25 |                 board.update_cell(cell, Coordinate{ x: j, y: i });
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `cell::Cell`, found struct `Coordinate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `y` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:41:28
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if self.cells[coordinate.y][coordinate.x].contents == Contents::Value { return }
[INFO] [stdout]    |                                  ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `x` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:41:42
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if self.cells[coordinate.y][coordinate.x].contents == Contents::Value { return }
[INFO] [stdout]    |                                                ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 |                 possible_candidates &= !board.candidates[y_a][x];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[[cell::Cell<'a>; 9]]` cannot be indexed by `u8`
[INFO] [stdout]   --> src/board.rs:41:6
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if self.cells[coordinate.y][coordinate.x].contents == Contents::Value { return }
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[[cell::Cell<'a>; 9]]>` is not implemented for `u8`
[INFO] [stdout]    = note: required because of the requirements on the impl of `Index<u8>` for `[[cell::Cell<'a>; 9]]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 possible_candidates &= !board.candidates[y_b][x];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `y` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.cells[coordinate.y][coordinate.x] = cell;
[INFO] [stdout]    |                               ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `x` of struct `Coordinate` is private
[INFO] [stdout]   --> src/board.rs:45:39
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.cells[coordinate.y][coordinate.x] = cell;
[INFO] [stdout]    |                                             ^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |                     board.candidates[block_exclusion][x] &= !possible_candidates;
[INFO] [stdout]    |                           ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[[cell::Cell<'a>; 9]]` cannot be indexed by `u8`
[INFO] [stdout]   --> src/board.rs:45:3
[INFO] [stdout]    |
[INFO] [stdout] 45 |         self.cells[coordinate.y][coordinate.x] = cell;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[[cell::Cell<'a>; 9]]>` is not implemented for `u8`
[INFO] [stdout]    = note: required because of the requirements on the impl of `Index<u8>` for `[[cell::Cell<'a>; 9]]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `cell::Contents`
[INFO] [stdout]   --> src/board.rs:47:20
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if cell.contents == Contents::Value {
[INFO] [stdout]    |            ------------- ^^ --------------- fn(u8) -> cell::Contents {cell::Contents::Value}
[INFO] [stdout]    |            |
[INFO] [stdout]    |            cell::Contents
[INFO] [stdout]    |
[INFO] [stdout]    = note: an implementation of `std::cmp::PartialEq` might be missing for `cell::Contents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:50:35
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 possible_candidates &= !board.candidates[y][x_a];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `&board::Board<'a>`
[INFO] [stdout]   --> src/board.rs:56:23
[INFO] [stdout]    |
[INFO] [stdout] 56 |         for row in &self.values {
[INFO] [stdout]    |                          ^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `answered_count`, `cells`, `fresh_coordinates`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 possible_candidates &= !board.candidates[y][x_b];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:58:15
[INFO] [stdout]    |
[INFO] [stdout] 58 |                     board.candidates[y][block_exclusion] &= !possible_candidates;
[INFO] [stdout]    |                           ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `&mut Board<'_>`
[INFO] [stdout]  --> src/strategies/unique_candidate.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |             if board.values[y][x] != 0 { continue }
[INFO] [stdout]   |                      ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |             let bitmask = board.candidates[y][x];
[INFO] [stdout]    |                                 ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `&mut Board<'_>`
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 |                 board.values[y][x] = value;
[INFO] [stdout]    |                       ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `answered_count` of struct `Board` is private
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 board.answered_count += 1;
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `fresh_coordinates` of struct `Board` is private
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 board.fresh_coordinates.push((x, y));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `board::Board<'_>`
[INFO] [stdout]   --> src/board.rs:88:61
[INFO] [stdout]    |
[INFO] [stdout] 88 |         assert_eq!(format!("{:x}", 0x01FF), format!("{:x}", board.candidates[3][6]));
[INFO] [stdout]    |                                                                   ^^^^^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `answered_count`, `cells`, `fresh_coordinates`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `board::Board<'_>`
[INFO] [stdout]   --> src/board.rs:89:61
[INFO] [stdout]    |
[INFO] [stdout] 89 |         assert_eq!(format!("{:x}", 0x0004), format!("{:x}", board.candidates[0][2]));
[INFO] [stdout]    |                                                                   ^^^^^^^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `answered_count`, `cells`, `fresh_coordinates`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:16:34
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 board.fresh_coordinates.push((x, y));
[INFO] [stdout]    |                                              ^^^^^^ expected struct `Coordinate`, found tuple
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Coordinate`
[INFO] [stdout]                found tuple `({integer}, {integer})`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:30:35
[INFO] [stdout]    |
[INFO] [stdout] 30 |                 possible_candidates &= !board.candidates[y_a][x];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 possible_candidates &= !board.candidates[y_b][x];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 37 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0106, E0277, E0308, E0369, E0425, E0432, E0583, E0609, E0615...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0106`.
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 |                     board.candidates[block_exclusion][x] &= !possible_candidates;
[INFO] [stdout]    |                           ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:50:35
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 possible_candidates &= !board.candidates[y][x_a];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 possible_candidates &= !board.candidates[y][x_b];
[INFO] [stdout]    |                                               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:58:15
[INFO] [stdout]    |
[INFO] [stdout] 58 |                     board.candidates[y][block_exclusion] &= !possible_candidates;
[INFO] [stdout]    |                           ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `board::Board<'_>`
[INFO] [stdout]   --> src/strategies/column_row_exclusion.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |         board.candidates = [
[INFO] [stdout]    |               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sudoku_solver`.
[INFO] [stdout] error[E0609]: no field `candidates` on type `board::Board<'_>`
[INFO] [stdout]    --> src/strategies/column_row_exclusion.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 |         ], board.candidates);
[INFO] [stdout]     |                  ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0609]: no field `candidates` on type `board::Board<'_>`
[INFO] [stdout]    --> src/strategies/column_row_exclusion.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 |         board.candidates = [
[INFO] [stdout]     |               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `board::Board<'_>`
[INFO] [stdout]    --> src/strategies/column_row_exclusion.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout] 149 |         ], board.candidates);
[INFO] [stdout]     |                  ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `&mut board::Board<'_>`
[INFO] [stdout]  --> src/strategies/unique_candidate.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |             if board.values[y][x] != 0 { continue }
[INFO] [stdout]   |                      ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |             let bitmask = board.candidates[y][x];
[INFO] [stdout]    |                                 ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `&mut board::Board<'_>`
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 |                 board.values[y][x] = value;
[INFO] [stdout]    |                       ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `answered_count` of struct `board::Board` is private
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 |                 board.answered_count += 1;
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0616]: field `fresh_coordinates` of struct `board::Board` is private
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 board.fresh_coordinates.push((x, y));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^ private field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:16:34
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 board.fresh_coordinates.push((x, y));
[INFO] [stdout]    |                                              ^^^^^^ expected struct `Coordinate`, found tuple
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Coordinate`
[INFO] [stdout]                found tuple `({integer}, {integer})`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `candidates` on type `board::Board<'_>`
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         board.candidates[7][0] = 0x08;
[INFO] [stdout]    |               ^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `values` on type `board::Board<'_>`
[INFO] [stdout]   --> src/strategies/unique_candidate.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 |         ], board.values);
[INFO] [stdout]    |                  ^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] [stdout] error: aborting due to 46 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0106, E0277, E0308, E0369, E0425, E0432, E0583, E0609, E0615...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0106`.
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5f40bbeb72607ab98728b000cf755a450c4ca65b95e3ef667916b61ab60ffab4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f40bbeb72607ab98728b000cf755a450c4ca65b95e3ef667916b61ab60ffab4", kill_on_drop: false }`
[INFO] [stdout] 5f40bbeb72607ab98728b000cf755a450c4ca65b95e3ef667916b61ab60ffab4
